package com.heima.user.controller.v1;

import com.heima.model.common.dtos.ResponseResult;
import com.heima.model.user.dtos.LoginDto;
import com.heima.user.service.ApUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/*
 * @description 前端的请求传入DTO传入用户名和密码过后，从数据库查询盐值与密码组合成加盐密码，再与数据库中的加盐密码对比，成功了，说明他可以登录。
 * 那么我们就查询数据库，将用户名的ID传入我们的token生成函数生成一串一串验证身份的Token值[过期时间为1天]，并且将用户信息脱敏后与token一并存入map中，
 * 返回给前端，前端会将数据缓存在浏览器。那么在后面的访问的时候，token的值通常会放在 HTTP 请求头的 Authorization 字段中，取出从而进行身份验证，从而然后进行拦截和通过。
 * @params
 * @return
 */

@RestController
@RequestMapping("/api/v1/login")
@Api(value = "app端用户登录",tags = "app端用户登录")
public class ApUserLoginController {

    @Autowired
private ApUserService apUserService;

    @PostMapping("/login_auth")
    @ApiOperation("用户登录")
    public ResponseResult login(@RequestBody LoginDto dto){
        return apUserService.login(dto);
    }
}
